Fast and Compact Hash Tables for Integer Keys
نویسنده
چکیده
A hash table is a fundamental data structure in computer science that can offer rapid storage and retrieval of data. A leading implementation for string keys is the cacheconscious array hash table. Although fast with strings, there is currently no information in the research literature on its performance with integer keys. More importantly, we do not know how efficient an integer-based array hash table is compared to other hash tables that are designed for integers, such as bucketized cuckoo hashing. In this paper, we explain how to efficiently implement an array hash table for integers. We then demonstrate, through careful experimental evaluations, which hash table, whether it be a bucketized cuckoo hash table, an array hash table, or alternative hash table schemes such as linear probing, offers the best performance—with respect to time and space— for maintaining a large dictionary of integers in-memory, on a current cache-oriented processor.
منابع مشابه
How to Hash a Set
Hash tables are widely used. They rely on good quality hash functions. Popular data 1 structure libraries either provide no hash functions or weak hash functions for sets or maps, making 2 it impossible or impractical to use them as keys in other tables. This article presents three algorithms 3 for hashing a set, two of which are simple to implement, practically fast, and can be combined. 4 The...
متن کاملKey and Value Paired Data using Java Hash Table
This paper proposes use of a Java HashTable mechanism for Online Shopping Cart Application over the Web Application. A hash table is a data structure in java that can offer rapid storage and retrieval of data. Hash tables are extensively used to implement tables that associate a set of key and values, as they provide O(1), to perform operations such as query, insert and delete operations. A lea...
متن کاملHigh Performance Self Organizing Dynamic Dictionaries
A dictionary data structure is a key-value store which supports insert, search and delete operations. Conventional data structures such as balanced binary search trees and hash tables are good both in theory and practice. However, these dictionaries are not adaptive as they do not exploit the temporal locality in key access patterns over time. On the other hand dictionaries like splay trees and...
متن کاملFast and deterministic hash table lookup using discriminative bloom filters
Hash tables are widely used in network applications, as they can achieve O(1) query, insert, and delete operations at moderate loads. However, at high loads, collisions are prevalent in the table, which increases the access time and induces non-deterministic performance. Slow rates and non-determinism can considerably hurt the performance and scalability of hash tables in the multi-threaded par...
متن کاملFootprint Reduction and Uniqueness Enforcement with Hash Indices in SAP HANA
Databases commonly use multi-column indices for composite keys that concatenate attribute values for fast entity retrieval. For realworld applications, such concatenated composite keys contribute significantly to the overall space consumption, which is particularly expensive for main memory-resident databases. We present an integer-based hash representation of the actual values for the purpose ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2009